package com.xyz.dao.test;


import org.junit.Test;

import java.io.*;
import java.util.ArrayList;
import java.util.List;

public class GenDao {

    private String DaoFormat =
            "package com.xyz.dao.dao;\n" +
            "\n" +
            "import com.free.ext.mybatis.dao.BaseDao;\n" +
            "import com.xyz.domain.table.%s;\n" +
            "import org.springframework.stereotype.Repository;\n" +
            "\n" +
            "@Repository\n" +
            "public class %sDao extends BaseDao<%s,Integer> {\n" +
            "\n" +
            "}";

    @Test
    public void genDao(){
        List<String> list = new ArrayList<>();
        list.add("CCustomerOperLog");
//        list.add("SCustInfoTemp");
        //        list.add("CAnnounceInfo");
//        list.add("SLotteryStatisDay");
//        list.add("SLotteryStatisMonth");
//        list.add("SLotteryPeriodRes");
//        list.add("SLotteryPeriod");
//        list.add("CCustomer");
//        list.add("CCustomerrechargelog");
//        list.add("CCustomersign");
//        list.add("CCustomerviplog");
//        list.add("CGiftlog");
//        list.add("CRecommendhistory");
//        list.add("OCustomergameaccnt");
//        list.add("OCustomergamelog");
//        list.add("OGame");
//        list.add("OGamerule");
//        list.add("OGamespecrule");
//        list.add("OGamestatisrule");
//        list.add("OGamewordrule");
//        list.add("SAnnouncement");
//        list.add("SGift");
//        list.add("SLotteryBetinfo");
//        list.add("SLotteryCustruledetail");
//        list.add("SLotteryCustrule");
//        list.add("SLotterydetail");
//        list.add("SLottery");
//        list.add("SSetting");
//        list.add("SVipDetail");
//        list.add("SVip");
        String path = "D://workspace//selfprjs//extrawork//javaprjs//xingyunzhuan//parent//dao//src//main//java//com//xyz//dao//dao//%s";
        list.forEach(x->{
            String daoFileNm = x + "Dao.java";
            String daoNm = x + "Dao";
            String filePath = String.format(path,daoFileNm);
            File f = new File(filePath);
            try {
                if(!f.exists()){
                    f.createNewFile();
                }
                FileWriter fileWritter = new FileWriter(f,true);
                String content = String.format(DaoFormat,x,x,x);
                fileWritter.write(content);
                fileWritter.flush();
                fileWritter.close();
            } catch (FileNotFoundException e) {
                e.printStackTrace();
            } catch (IOException e) {
                e.printStackTrace();
            }
        });
    }
}
